load("//:build_variables.bzl", "COPTS")
load("//tools/lint:linters.bzl", "clang_tidy_test")

package(
    default_visibility = ["//:android_cuttlefish"],
)

cc_binary(
    name = "cvd_internal_start",
    srcs = [
        "filesystem_explorer.cc",
        "filesystem_explorer.h",
        "flag_forwarder.cc",
        "flag_forwarder.h",
        "main.cc",
        "override_bool_arg.cpp",
        "override_bool_arg.h",
        "validate_metrics_confirmation.cpp",
        "validate_metrics_confirmation.h",
    ],
    copts = COPTS,
    deps = [
        "//cuttlefish/common/libs/fs",
        "//cuttlefish/common/libs/utils:environment",
        "//cuttlefish/host/commands/assemble_cvd:flags_defaults",
        "//cuttlefish/host/libs/config:fetcher_config",
        "//cuttlefish/host/libs/config:host_tools_version",
        "//cuttlefish/host/libs/config:instance_nums",
        "//cuttlefish/host/libs/vm_manager",
        "//libbase",
        "@gflags",
        "@jsoncpp",
        "@libxml2//:libxml2",
    ],
    # `layering_check` conflicts with the combination of the clang prebuilt and
    # the cmake build rules used for @libxml2.
    features = ["-layering_check"],
)

clang_tidy_test(
    name = "cvd_internal_start_clang_tidy",
    srcs = [":cvd_internal_start"],
    tags = ["clang_tidy", "clang-tidy"],
)


